Data-Driven Multithreading Programming Tool-chain
نویسندگان
چکیده
The increasing parallelism offered by the parallel architectures introduced by processor vendors, coupled with the need to extract more parallelism out of the applications, has led the community to examine more efficient programming and execution models. The Dataflow Multithreading model is known to be the model that can exploit the most parallelism out of a wide range of applications. The Dataflow Multithreading model is not new to the community and one of the main reasons it wasn’t widely spread among the user community is the programming effort it requires in order to exploit the maximum parallelism out of a Dataflow implementation. The wide spread of parallel machines today though has led many researchers to re-examine its applicability. In this work we explore the programmability of the Data-Driven Multithreading (DDM) model, a non-blocking execution model that applies the principles of Dataflow execution at a coarser granularity, that of sequence of instructions. In this paper we present a tool-chain that promises to ease the effort needed by the programmers to write efficient DDM applications that exploit the Dataflow execution model and in particular two implementations of the DDM model, the TFlux Architecture and the Data-Driven Multithreading Virtual Machine (DDM-VM). The tool-chain includes a set of programming directives, developed under the DDM C Preprocessor project and an Eclipse Plug-in suite that enables content assist while integrating directives in applications, a side panel with the available directives, their arguments and explanation for each one. Finally, the preprocessing procedure is integrated in the Eclipse editor to enable easy DDM application development regardless of the platform used.
منابع مشابه
Parallel execution with Data-Driven Multithreading
Chip Multiprocessors are currently dominating the market and the number cores is increasing rapidly. As such, models of execution able to efficiently exploit this parallelism are in high demand. Models based on the dataflow principles, such as the Data-Driven Multithreading (DDM), are known to be very good candidates. In this paper we briefly present the benefits of the DDM model of execution, ...
متن کاملDDMCPP: The Data-Driven Multithreading C Pre-Processor
Single thread performance improvement using more complex structures and higher frequencies is currently reaching its limits. As such, several architectures that target this problem through exploiting coarse grainedmultithreading have been proposed. Such an architecture is the DataDriven Multithreading Chip Multiprocessor (DDM-CMP) which is based on a dataflow-like model of execution. To fully e...
متن کاملThe Calculation of the output price vectorby applying reverse linear programming: The novel approach in DEA
In the today’s world wherein every routine is based on economic factors, there is no doubt that theoretical sciences are driven by their capabilities and affordances in terms of economy. As a mathematical tool, data envelopment analysis (DEA) is provided to economics, so that one can investigate associated costs, prices and revenues of economic units. Data Envelopment Analysis (DEA) is a linear...
متن کاملPOSIX-Compliant Portable Code Synthesis for Embedded Systems
In a large class of embedded systems, dynamic multithreading using traditional OS techniques is infeasible due to memory and processing overheads or lack of operating systems (OS) availability for the target embedded processor. In this work, we propose a source-to-source translator that takes a POSIX compliant multithreaded C program as input and generates an equivalent, embedded processor inde...
متن کاملA Visual Simulation Framework For Simultaneous Multithreading Architectures
The computing systems, and particularly microarchitectures, are in a continuous expansion reaching an unmanageable complexity by the human mind. In order to understand and control this expansion, researchers need to design and implement larger and more complex systems’ simulators. In the current paradigm the simulators play the key role in going further, by translating all complex processing me...
متن کامل